﻿#ifndef CLIENTDISKTCPSOCKET_H
#define CLIENTDISKTCPSOCKET_H

#include <QTcpSocket>
#include <QTimer>

class ClientDiskTcpSocket : public QTcpSocket
{
    Q_OBJECT
public:
    explicit ClientDiskTcpSocket(QObject *parent = nullptr);
    static ClientDiskTcpSocket *getInstance();
    void loadConfig();

    // 获取用户名
    QString usrName() const;
    void setUsrName(const QString &newUsrName);

    // 获取用户 当前目录地址
    QString curPath();
    // 设置用户 当前目录地址
    void setStrCurPath(const QString &newStrCurPath);

private:
    QString m_strIP;
    quint16 m_usPort;
    QTimer *reConnectTimer;// 重连计时器
    QString m_usrName;
    QString m_strCurPath;

    void initMember();


public slots:
    void slot_Connected();
    void slot_DisConnected();
    void slot_ReConnect();// 重连服务器
    void slot_RecvMsg(); // 接收服务器的数据

};

#endif // CLIENTDISKTCPSOCKET_H
